/**
 * Created by 768138386@qq.com on 2017/6/23.
 */
var wxConfig = angular.module('wxConfig', ['Encryption']);
wxConfig.service('wxSdk',function ($http,$q,Sha1,$location,$rootScope) {
    return {
        wxConfig:wxConfig,
        getscanQRCode:scanQRCode
    }
    function getJSapi() {
        var deferred = $q.defer();
        $http.get(API('huanbi/security/getJSapiTicket')).then(function successCallback(str) {
            if(str){
                deferred.resolve(str);
            }else {
                deferred.reject();
            }
        },function errorCallback(result) {
            deferred.reject();
        });
        return deferred.promise;
    }
    function wxConfig() {
        // var jsAPI = getJSapi();
        // jsAPI.then(function successCallback(result) {
        //     if(result){
        //         $rootScope.JSapiTicket =result.data;
        //     }
        // },function errorCallback(result) {
        //     deferred.reject();
        // })
        var JSapiTicket ='kgt8ON7yVITDhtdwci0qec6LaTTL72KgXa3JNU7S9TCcx8zoH0Obq2L-xjZZ8XdH8dfBOlLU7joXQC3epCNXZQ';
        var time =new Date().getTime();
        var url = $location.absUrl();
        var nonceStr ="huanbi";
        var signature = "jsapi_ticket="+JSapiTicket+"&noncestr="+nonceStr+"&timestamp="+time+"&url="+url;
        signature = Sha1.hex_sha1(signature);
        wx.config({
            debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
            appId: 'wx4a3fd351428d5e97', // 必填，公众号的唯一标识
            timestamp: time, // 必填，生成签名的时间戳
            nonceStr: nonceStr, // 必填，生成签名的随机串
            signature: signature,// 必填，签名，见附录1
            jsApiList: ['scanQRCode'] // 必填，需要使用的JS接口列表，所有JS接口列表见附录2
        });
        wx.error(function (res) {
            alert(res.errMsg);
        });
    }
    function scanQRCode() {
        wx.scanQRCode({
            needResult: 1, // 默认为0，扫描结果由微信处理，1则直接返回扫描结果，
            scanType: ["qrCode","barCode"], // 可以指定扫二维码还是一维码，默认二者都有
            success: function (res) {
                var result = res.resultStr; // 当needResult 为 1 时，扫码返回的结果
                console.log(result);
            }
        });
    }
});